草庐IT

SQL 语句

全部标签

php - SQL 盲注

当我在我的页面上使用acunetix时,我得到一个:BlindSQL/XPathinjection标题:GET/file.php?id=2'+and+31337-31337=0+--+&page=2回应:找不到文件(有时会显示结果)这是我的PHP代码:$id=(int)htmlentities($_GET['id']);$fileid=mysql_real_escape_string($id);查询:SELECT*FROM`files`WHERE`id`='".$fileid."'我做错了什么?有人可以用这个删除我的数据库吗?我也在一些几乎等于那个的查询中得到相同的消息,但也有限制0,

php - 什么等同于 PHP 中的 C# lock 语句?

为了并发和确保数据的完整性,您将如何获得给定对象的互斥锁?您是否需要在数据库或文件中使用锁定,或者PHP是否支持类似的功能? 最佳答案 PHP不支持多线程,因此没有对象锁定机制。如果你想锁定一个文件,你可以使用flock为了那个原因。无需锁定数据库,因为数据库引擎通常可以处理多个连接。 关于php-什么等同于PHP中的C#lock语句?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/question

php - 我怎样才能使这个 SQL 查询更有效率? PHP

我有一个系统,用户可以通过该系统查看他们单独订阅的类别,以及默认情况下在他们所属地区可用的类别。因此,表格如下:类别用户类别地区分类我正在数据库中查询他们区域内的所有类别,以及他们订阅的所有单独类别。我的查询如下:Select*FROM(categoriesc)LEFTJOINusers_categoriesuconuc.category_id=c.idLEFTJOINregions_categoriesrconrc.category_id=c.idWHERE(rc.region_id=?ORuc.user_id=?)至少我相信那是查询,我正在使用Cake的ORM层创建它,所以确切的是

php - ORM (doctrine) 和 SQL 之间的代码比较?

我已经阅读了很多关于ORM的文章,但我想知道是否有ORM之类的原则和SQL之间的并排比较示例,以便您可以看到哪个更容易维护?无法在google中找到此类比较。 最佳答案 “更易于维护”是主观的。ORM总是有一些限制。它试图将平面关系SQL放入OOP的procrustean床中。如果您是OOP的忠实粉丝,那么ORM可能适合您。否则请使用SQL。换句话说,ORM使通用任务变得更简单,但任何不寻常的任务都会让人头疼。 关于php-ORM(doctrine)和SQL之间的代码比较?,我们在Sta

php - 大字符串 : Text files or SQL DB?

我正在使用PHP编写论坛系统。我目前将线程ID、标题、作者、View和其他属性存储在SQL数据库中,然后将线程主体(HTML和BBcode)存储在以线程ID命名的文件夹内的文本文件中。在实践中,获取数据库值然后从文本文件中获取线程主体真的很简单,但我想知道这是否是“正确的方法”?我个人对此没有任何问题,但如果事实证明它非常低效,我应该改为将线程主体HTML和BBcode都存储在数据库中,然后我会改变。但是,对我来说,将这样一个(很可能)巨大的多行文本字符串以及许多不同的字符存储在数据库中似乎是错误的——我被告知数据库更多的是用于短字段“值”而不是网站内容。我只是想要一个明确的答案,因为

php - doctrine select 语句总是返回表的所有字段

我有下表Test:tableName:testcolumns:test_id:name:test_idasidprimary:trueautoincrement:truetype:integernotnull:truetest_name:name:test_nameasnametype:string(255)test_title:name:test_titleastitletype:string(255)和这个dql语句$dql=Doctrine_Query::create()->select('t.name')->from('Model_Testt');生成了下面的sqlSELECT

php - 用于 PHP sqlsrv_connect() 的 SQL Server 驱动程序使用忽略的错误填充 PHP 错误日志

每次我的PHP应用程序连接到我的SQLServer数据库时,以下内容都会被放入PHP错误日志中:[01-Apr-201112:39:16]sqlsrv_connect:SQLSTATE=01000[01-Apr-201112:39:16]sqlsrv_connect:errorcode=5701[01-Apr-201112:39:16]sqlsrv_connect:message=[Microsoft][SQLServerNativeClient10.0][SQLServer]Changeddatabasecontextto'my_table_name'.[01-Apr-201112:

php - 嵌套的 foreach 语句无效。帮助?

请原谅极端初学者的编码风格。我第一次使用API中的PHP和JSON字符串。我在这里尝试做的是打印出用户正在搜索的多部电影结果,如果您浏览它显然是行不通的。这是一个搜索结果页面-每个项目旁边都有一张电影海报和一些关键细节。我想要在每个结果旁边的其中一件事是电影中列出的前5位Actor的列表,作为“主演”,然后是电影中列出的所有导演作为“导演”。毫无疑问,问题在于我嵌套了foreach语句。但我不知道还有什么其他方法可以做到这一点。拜托,最简单的答案对我来说是最好的。我不介意这是否是不好的做法,只要能最快解决它就是完美的!代码如下://Checkiftherewereanyresultsi

php - SQL Server 2008 数据库 + PHP 中的 UTF-8

我想用PHP在MSSQL2008数据库中存储数据。我遇到了像äöüß这样的字母问题,它们在数据库中显示不正确,当我在网站上显示时。当我使用PHP对输入数据进行utf8_encode并使用utf8_decode对输出数据进行utf8_decode时,它​​会起作用。还有其他更简单的方法可以解决这个问题吗? 最佳答案 我已经解决了这个问题,问题是PHP的mssql驱动程序坏了(找不到bugs.php.net的链接,但它在那里)并且在涉及到nchar和nvarchar字段a时失败了utf8.您需要稍微转换数据和查询:SELECTsome_

PHPDoc - 哪个@[item] 用于我的源代码中的 "const"语句?

如何使用PHPDoc标记常量?我应该使用什么@-tag?我想到了@var,但那不合适。 最佳答案 简短的回答是没有。而且也不需要一个。文档生成器足够聪明,能够看到常量声明。因此,只需将摘要放在那里,不要使用任何@-tags。这应该是您需要做的所有事情......classfoo{/***Thisconstantdoessomethingthatyouneed.*/constFOO='bar';} 关于PHPDoc-哪个@[item]用于我的源代码中的"const"语句?,我们在Stack